1. The Field of the Invention
The field of the invention relates to communications over telephone lines using dual-tone multiple frequency (DTMF) signaling. Specifically, the invention relates to the detection of DTMF signaling by a modem using a DTMF decoder that applies a non-uniform sample index by including compensation for the phase error introduced by the ITU standards, thereby reducing signal leakage.
2. Prior State of the Art
Dual-tone multiple frequency (DTMF) signaling, increasingly being deployed worldwide with push-button telephone sets, offers a high dialing speed compared with the dial-pulse signaling used in conventional rotary telephone sets. DTMF signaling is also used in applications requiring interactive control such as in voice mail, phone messaging, e-mail, telephone dialing, voice mail, and telephonic banking systems. In addition to signaling, tone detection is also used in line probing techniques to estimate the quality of phone lines. The DTMF signal standard, initially developed by Bellcore, was redefined in 1989 by the International Telecommunication Union (ITU). Since the Bellcore DTMF standard is a subset of the ITU standard, an ITU-compliant DTMF device must also be Bellcore compliant. To be commercially viable, all modems presently offered for sale must include DTMF signaling generation and detection functionality.
A DTMF signal consists of a sum of two tones with frequencies taken from two mutually exclusive groups of preassigned frequencies. Although alternative frequencies may be detected using the same methods employed by DTMF detectors, modern applications are optimized for detecting the frequencies of two tones from the internationally accepted ITU standard frequencies. The mutually exclusive groups of preassigned ITU frequencies consist of four low frequency tones and four high frequency tones. The four low frequency tones are 697 Hz, 770 Hz, 852 Hz, and 941 Hz. The four high frequency tones are 1,209 Hz, 1,336 Hz, 1,477 Hz, and 1,633 Hz. Each pair of tones, consisting of a low frequency tone and a high frequency tone, correspond to a unique number or symbol, one of sixteen push-button digits (0-9, A-D, #, *). The four alphanumeric keys (A-D) are not yet available on standard telephone handsets and are reserved for future use. Since the DTMF signaling frequencies are all located in the frequency band used for speech transmission, DTMF signaling systems are considered in-band.
The digital generation of DTMF signals is accomplished by adding two finite duration digital sinusoidal sequences. Table 1 demonstrates how the four low frequency tones and four high frequency tones are combined in a DTMF signal to create sixteen touch-tone digits consisting of numbers, symbols, and letters.
To be commercially viable, DTMF decoders are subject to the constraints created by the ITU recommendations concerning frequency resolution, time duration, and signal power. Under the ITU recommendations a detected frequency must be within 3.5% of the expected frequency or be rejected as a DTMF tone. The guidelines also require that a qualified detected frequency within 1.5% of the target frequency register as a DTMF tone. According to the ITU recommendations, a DTMF signal of less than 23 ms should be rejected, while a signal duration of 40 ms or more should be accepted. Signals between 23 ms and 40 ms can either be accepted or rejected. Signal strength is measured by a Signal-to-Noise ratio and signal power. A detected signal must have at least a 15 dB Signal-to-Noise ratio before it can be considered. The detected signal must also have a signal power of at least xe2x88x9226 dBm. The ITU recommendations are shown in table 2 below.
These ITU recommendations place stringent constraints on DTMF detection performance in both the time and frequency domains and are not always satisfied by conventional DTMF decoders relying on a standard DFT.
Decoding a DTMF signal involves identifying two tones in the sampled signal and distinguishing the two tones from signal noise, human voice signals, and other signal interference. Although a number of chips with analog circuitry are available for the generation and detection of DTMF signals in a single channel, these function can also be implemented digitally on DSP chips. The digital implementations surpass analog approaches both in cost and performance. The digital DSP based tone detection can be performed by computing the discrete Fourier transform (DFT) of the DTMF signal and then measuring the energy present at the eight fundamental DTMF tones and the eight associated second harmonic frequencies. The second harmonic energy measurement is made to distinguish DTMF signals from human voices. In general, the spectrumn of the human voice contains energy components at the second harmonics, while the DTMF contains negligible energy at the second harmonics. Thus, if energy is present at both the DTMF fundamental tone and the second harmonic then the signal is probably not a DTMF signal.
A traditional DTMF decoder computes the DFT samples closest in frequency to the eight fundamental frequencies in the ITU standard for DTMF. Most of the approaches in the prior art are based on the DFT of equation 1.                               X          ⁡                      (            k            )                          =                              ∑                          n              =              0                                      N              -              1                                ⁢                      xe2x80x83                    ⁢                                    x              ⁡                              (                n                )                                      ⁢                          ⅇ                                                -                                      j                    ⁢                    2                    ⁢                    π                                                  ⁢                                  xe2x80x83                                ⁢                                  kn                  /                  N                                                                                        (        1        )            
Given a sequence of N samples, the DFT uniformly samples the discrete-time Fourier transform of the sequence at N evenly spaced frequencies,   ω  =      2    ⁢    π    ⁢          k      N      
where k, the frequency bin index, is equal to 0, . . . , N-1. Making the width (resolution) of each frequency bin equal to 2xcfx80/N. Each frequency bin is centered at an integer multiple of 2xcfx80/N, these uniform blocks do not correspond exactly to the eight fundamental DTMF frequencies, nor do they correspond to the eight associated second harmonic frequencies. This means no single value of N can meet all of the ITU frequency resolution recommendations. ATandT states that N=205 is the best value of N at a 8000 Hz sampling rate to detect the eight fundamental DTMF tones. A common method used to detect DTMF signaling assumes that the DTMF decoder does not need all samples X(k), since only eight frequencies are initially relevant. Since only a small subset of samples is required a fast Fourier Transform (FFT) algorithm is not efficient to use for DTMF detection. It is well known to those skilled in the art that Goertzel""s algorithm is a more efficient and effective algorithm when only a small subset (8 fundamental tones and 8 harmonic tones) of samples X(k) are required. Numerous DTMF decoders in the prior art are based on using a DFT employing Goertzel""s algorithm. In one previous embodiment the DTMF decoder used two banks of eight filters, one bank using Goertzel""s algorithm for the fundamental tones and the other bank for the harmonics. This enables the device to avoid computing all N DFT coefficients for each fundamental DTMF frequency. The Goertzel filter is typically implemented as a second order infinite impulse response (IIR) band pass filter. The Goertzel filter requires 2N real multiplication/addition operations by the DSP. Other implementations employ the use of a non-uniform DFT (NDFT) to detect energy at fundamental DTMF frequencies. By setting k to yield an exact DTMF frequency of interest, i.e. k=N fi/fs where fs is the sampling rate. This approach in effect creates sliding windows for the DFT bin that adds considerable complexity to the DSP calculations and still results in non-exact calculations.
Unfortunately, even the DTMF decoders using a DFT that employs Goertzel""s algorithm have fundamental disadvantages that prevent exact detection of the fundamental DTMF tones. The DFT length N determines the frequency spacing between the locations of the DFT samples. The DFT frequency bin index k is defined in equation 2.                     k        =                              f            k                    ⁢                      N                          f              s                                                          (        2        )            
Since k is an integer, only certain frequencies (fk) can be represented at any given sampling frequency (fs) as seen in equation 3.                               f          k                =                  k          ⁢                                    f              s                        N                                              (        3        )            
Furthermore, fk is periodic in N data samples such that there are k full cycles of frequency fk in the N samples. If the input signal sampled contains a sinusoid of frequency f different from the set of frequencies represented by equation 3, then the DFT will contain large valued samples at values of k closest to Nf/fs. In addition, however, the DFT will contain non-zero values at other values of k due to a phenomenon called leakage. To minimize leakage it is desirable to choose N appropriately so that the tone frequencies fall as closely as possible to a DFT bin, thus providing a relatively strong DFT sample at this bin. The DTMF decoder computes the DFT samples closest in frequency to the eight DTMF fundamental tones. as previously mentioned, for a sampling frequency of 8,000 Hz, ATandT has found that N=205 is the best value to detect the eight fundamental DTMF tones. In contrast, N=201 is the best value to detect the eight second harmonic frequencies. Table 3 shows that the DFT index values closest to each of the tone frequencies and their second harmonics for these values of N.
It is clear that any approach based on the DFT cannot satisfy the ITU recommendations exactly. The fundamental reason for this failure is that k must be an integer, but if a DTMF decoder is limited to selecting integer values for k then each calculation introduces an absolute error to the DFT of the sample.
It is therefore an object of the present invention to provide a method of detecting DTMF tones through a fast recursive modified DFT that includes a phase correction term.
It is yet a further object of the present invention to provide a system for efficiently detecting DTMF signals received from a communications network, (e.g., a telephone network), for decoding the DTMF signals via a terminal or network interface device, (e.g., a modem), that utilizes a recursive modified DFT to introduce a phase error compensation factor into the DSP computations.
It is another object of the present invention to provide a DTMF decoder for incorporation into a network interface device, such as a modem, that is compatible with the ITU recommendations.
Additional objects and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the invention. The objects and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims.
To achieve the foregoing objects, and in accordance with the invention as embodied and broadly described herein, a DTMF signal transceiver circuit apparatus for improving upon the architecture, detection, extraction, decoding, and transmission functionality with respect to dual-tone modulated frequencies of a terminal equipment device, such as a modem, is presented. The DTMF signal transceiver circuit apparatus is deployed in digital devices wherein accuracy is critical. The DTMF signal transceiver circuit apparatus includes a circuit capable of generating and detecting DTMF tones that must be interpreted by the terminal equipment, such as a modem, in order to comply with specifications propagated by the ITU.
The circuit of the present invention, in its preferred embodiment, is comprised of a communication network interface; a DTMF generator module for generating the fundamental DTMF tones and summing them together; a DTMF detector comprising a sampling module, a computation module, an analysis module, and a decode module; and a terminal device interface. The sampling module is adjusted to a frequency adequate to avoid data loss, typically twice the frequency of the largest valid transmitted value. The computation module of the present invention provides a technical advance by compensating for the phase error introduced into all calculations based on a DFT or non-uniform DFT during the processing of the signals. More specifically, a correction term is determined and added to the DFT, creating a modified DFT. As the computation module is no longer using a uniform DFT, typical FFT based processor operation reductions are not available to the computation module, instead the present invention develops a fast algorithm to compute the proposed transformation. Once the modified DFT is completed the computation module calculates the energy levels at the relevant energy peaks coinciding with the fundamental DTMF tones and their respective second harmonic frequencies. The analysis module takes the results of the DFT transform and the energy level calculation to determine whether a DTMF tone has been observed. The circuit assumes that a DTMF tone has been detected when an signal energy peak is detected within the ITU signal tolerance range of a low fundamental DTMF frequency and a high fundamental DTMF frequency, and there are no energy peaks found at the corresponding harmonics. The analysis module must also verify that the signal meet the corresponding ITU requirements for signal strength and duration. Once a DTMF signal has been confirmed the decode module, takes the two fundamental frequencies and translates them into the number, symbol, or letter corresponding to the detected frequencies. This translated value is then passed to the terminal device interface for further use by the modem.
These and other objects and features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter.